/**
 * Deklaracja Okna Logowania
 * 
 */
import org.eclipse.swt.*;
import org.eclipse.swt.events.*;
import org.eclipse.swt.widgets.*;
import java.util.StringTokenizer;

public class OknoLogowania {
	
	StaleZmienneIMetody graEdukacyjna = new StaleZmienneIMetody();
	
	private Shell shell;
	private Display display;
	private Listener sluchacz;
	
	private Text poleLoginu;
	private Text poleHasla;
	
	private Label etykietaLoginu;
	private Label etykietaHasla;
	private Label etykietaNazwaProgramu;
	
	private Button przyciskZaloguj;
	private Button przyciskRejestracja;
	              

	public OknoLogowania(){
		display = Display.getCurrent();
		shell = new Shell(display);
		init();
		open();
		startEvenLoop();		
	}
	
	public void open(){
		shell.open();
	}
	
	public void startEvenLoop(){
		while (!shell.isDisposed()){
			if (!display.readAndDispatch())
				display.sleep();
		}
	}
		
	public void init(){
		shell.setSize(1000,600);
	    shell.setText(graEdukacyjna.nazwaProgramu + " " + graEdukacyjna.wersjaProgramu + " - panel logowania");
	    
	    etykietaNazwaProgramu = new Label(shell, SWT.LEFT);
	    etykietaNazwaProgramu.setText(graEdukacyjna.nazwaProgramu);
	    etykietaNazwaProgramu.setBounds(70,10,80,30);
	    etykietaLoginu = new Label(shell, SWT.LEFT);
	    etykietaLoginu.setText("Login: ");
	    etykietaLoginu.setBounds(10,45,40,20);
	    etykietaHasla = new Label(shell, SWT.LEFT);
	    etykietaHasla.setText("Haslo: ");
	    etykietaHasla.setBounds(10,70,40,20);
	    
	    poleLoginu = new Text(shell, SWT.LEFT| SWT.SINGLE );
	    poleLoginu.setBounds(55,40,150,20);
	    poleLoginu.setEditable(true);
	 
	    poleHasla = new Text(shell, SWT.LEFT| SWT.SINGLE | SWT.PASSWORD);
	    poleHasla.setBounds(55,65,150,20);
	    poleHasla.setEditable(true);	
	    
	    przyciskZaloguj = new Button(shell,SWT.PUSH);
	    przyciskZaloguj.setText("Zaloguj");
	    przyciskZaloguj.setBounds(135,100,70,30);
	    
	    sluchacz = new Listener(){
	    	public void handleEvent(Event event){
	    		switch (event.type){
	    		   case SWT.Selection:
	    			   if (event.widget == przyciskZaloguj)
	    			   {
	    				   Gracz gracz = new Gracz();
	    	               gracz = new Gracz(poleLoginu.getText());
	    	               if (poleHasla.getText().equals(gracz.dajHaslo()))
	    	               {
	    	            	   shell.close();
	    	            	   OknoProgramu oknoProgramu = new OknoProgramu(gracz);
	    	                
	    	               }else
	    	               {
	    	                  poleHasla.setText("");
	    	                  poleLoginu.setText("");
	    	               }
	    			   }
	    			   break;
	    		}
	    	}
	    };
	    przyciskZaloguj.addListener(SWT.Selection, sluchacz);
	}
}
